//#include<unordered_map>
//#include<list>;
//using namespace std;
//class LRUCache {
//private:
//    using iterator = list<int>::iterator;
//    int capacity_;
//    list<int>list_;
//    unordered_map<int, iterator>map;
//public:
//    LRUCache(int capacity):capacity_(capacity){
//
//    }
//
//    int get(int key) {
//        int res = -1;
//        if (map.find(key) != map.end()) {
//            list_.erase(map[key]);
//            list_.insert(list_.end() - 1, res);
//            res = *map[key];
//        }
//        
//        return res;
//    }
//
//    void put(int key, int value) {
//        if()
//    }
//};
//
///**
// * Your LRUCache object will be instantiated and called as such:
// * LRUCache* obj = new LRUCache(capacity);
// * int param_1 = obj->get(key);
// * obj->put(key,value);
// */